﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Win32Proxy.Enums
{
    public enum SystemMetric
    {
        /// <summary>
        /// 指定系统如何排列最小化窗口的标志。 有关更多信息，请参阅本主题中的"备注"部分
        /// The flags that specify how the system arranged minimized windows. For more information, see the Remarks section in this topic.
        /// </summary>
        SM_ARRANGE = 56,

        /// <summary>
        /// 指示系统的启动方式：0 Normal boot 1 Fail-safe boot 2 Fail-safe with network boot 故障安全启动（也称为SafeBoot，安全模式或干净启动）会绕过用户启动文件
        /// The value that specifies how the system is started:
        /// 0 Normal boot
        /// 1 Fail-safe boot
        /// 2 Fail-safe with network boot
        /// A fail-safe boot (also called SafeBoot, Safe Mode, or Clean Boot) bypasses the user startup files.
        /// </summary>
        SM_CLEANBOOT = 67,

        /// <summary>
        /// 桌面上的显示器数量。 有关更多信息，请参阅本主题中的"备注"部分。
        /// The number of display monitors on a desktop. For more information, see the Remarks section in this topic.
        /// </summary>
        SM_CMONITORS = 80,

        /// <summary>
        /// 鼠标上的按钮数量，如果没有安装鼠标，则为零。
        /// The number of buttons on a mouse, or zero if no mouse is installed.
        /// </summary>
        SM_CMOUSEBUTTONS = 43,

        /// <summary>
        /// 反映笔记本电脑或平板模式的状态，0表示平板模式，否则为非零。 当此系统指标发生变化时，系统通过WM_SETTINGCHANGE在LPARAM中发送带有"ConvertibleSlateMode"的广播消息。 请注意，此系统指标不适用于台式PC。 在这种情况下，请使用GetAutoRotationState。
        /// Reflects the state of the laptop or slate mode, 0 for Slate Mode and non-zero otherwise. When this system metric changes, the system sends a broadcast message via WM_SETTINGCHANGE with "ConvertibleSlateMode" in the LPARAM. Note that this system metric doesn't apply to desktop PCs. In that case, use GetAutoRotationState.
        /// </summary>
        SM_CONVERTIBLESLATEMODE = 0x2003,

        /// <summary>
        /// 窗口边框的宽度（以像素为单位）。 这相当于具有3-D外观的窗口的SM_CXEDGE值。
        /// The width of a window border, in pixels. This is equivalent to the SM_CXEDGE value for windows with the 3-D look.
        /// </summary>
        SM_CXBORDER = 5,

        /// <summary>
        /// 光标的宽度，以像素为单位。 系统无法创建其他大小的游标。
        /// The width of a cursor, in pixels. The system cannot create cursors of other sizes.
        /// </summary>
        SM_CXCURSOR = 13,

        /// <summary>
        /// 同 SM_CXFIXEDFRAME.
        /// This value is the same as SM_CXFIXEDFRAME.
        /// </summary>
        SM_CXDLGFRAME = 7,

        /// <summary>
        /// 双击序列中第一次单击位置周围的矩形宽度（以像素为单位）。 第二次单击必须出现在由SM_CXDOUBLECLK和SM_CYDOUBLECLK定义的矩形内，以便系统考虑双击两次单击。 两次单击也必须在指定时间内发生。要设置双击矩形的宽度，请使用SPI_SETDOUBLECLKWIDTH调用SystemParametersInfo。
        /// The width of the rectangle around the location of a first click in a double-click sequence, in pixels. The second click must occur within the rectangle that is defined by SM_CXDOUBLECLK and SM_CYDOUBLECLK for the system to consider the two clicks a double-click. The two clicks must also occur within a specified time.
        /// To set the width of the double-click rectangle, call SystemParametersInfo with SPI_SETDOUBLECLKWIDTH.
        /// </summary>
        SM_CXDOUBLECLK = 36,

        /// <summary>
        /// 鼠标指针在拖动操作开始之前可以移动的鼠标指向任意一侧的像素数。 这允许用户轻松地单击和释放鼠标按钮而不会无意中开始拖动操作。 如果此值为负，则从鼠标按下点的左侧减去该值并将其添加到其右侧。
        /// The number of pixels on either side of a mouse-down point that the mouse pointer can move before a drag operation begins. This allows the user to click and release the mouse button easily without unintentionally starting a drag operation. If this value is negative, it is subtracted from the left of the mouse-down point and added to the right of it.
        /// </summary>
        SM_CXDRAG = 68,

        /// <summary>
        /// 三维边框的宽度（以像素为单位）。 该指标是SM_CXBORDER的3-D对应物。
        /// The width of a 3-D border, in pixels. This metric is the 3-D counterpart of SM_CXBORDER.
        /// </summary>
        SM_CXEDGE = 45,

        /// <summary>
        /// 围绕窗口周边的框架的厚度，其具有标题但不是相当大的像素。 SM_CXFIXEDFRAME是水平边框的高度，SM_CYFIXEDFRAME是垂直边框的宽度。该值与SM_CXDLGFRAME相同。
        /// The thickness of the frame around the perimeter of a window that has a caption but is not sizable, in pixels. SM_CXFIXEDFRAME is the height of the horizontal border, and SM_CYFIXEDFRAME is the width of the vertical border.
        /// This value is the same as SM_CXDLGFRAME.
        /// </summary>
        SM_CXFIXEDFRAME = 7,

        /// <summary>
        /// DrawFocusRect绘制的焦点矩形的左右边缘的宽度。 该值以像素为单位。Windows 2000：不支持此值。
        /// The width of the left and right edges of the focus rectangle that the DrawFocusRect draws. This value is in pixels.
        /// Windows 2000:  This value is not supported.
        /// </summary>
        SM_CXFOCUSBORDER = 83,

        /// <summary>
        /// 同 SM_CXSIZEFRAME.
        /// This value is the same as SM_CXSIZEFRAME.
        /// </summary>
        SM_CXFRAME = 32,

        /// <summary>
        /// 主显示器监视器上全屏窗口的客户端区域宽度（以像素为单位）。 要获取未被系统任务栏或应用程序桌面工具栏遮挡的屏幕部分的坐标，请使用SPI_GETWORKAREA值调用SystemParametersInfo函数。
        /// The width of the client area for a full-screen window on the primary display monitor, in pixels. To get the coordinates of the portion of the screen that is not obscured by the system taskbar or by application desktop toolbars, call the SystemParametersInfo function with the SPI_GETWORKAREA value.
        /// </summary>
        SM_CXFULLSCREEN = 16,

        /// <summary>
        /// 水平滚动条上箭头位图的宽度（以像素为单位）。
        /// The width of the arrow bitmap on a horizontal scroll bar, in pixels.
        /// </summary>
        SM_CXHSCROLL = 21,

        /// <summary>
        /// 水平滚动条中拇指框的宽度，以像素为单位。
        /// The width of the thumb box in a horizontal scroll bar, in pixels.
        /// </summary>
        SM_CXHTHUMB = 10,

        /// <summary>
        /// 图标的默认宽度（以像素为单位）。 LoadIcon函数只能加载具有SM_CXICON和SM_CYICON指定维度的图标。
        /// The default width of an icon, in pixels. The LoadIcon function can load only icons with the dimensions that SM_CXICON and SM_CYICON specifies.
        /// </summary>
        SM_CXICON = 11,

        /// <summary>
        /// 大图标视图中项目的网格单元格的宽度，以像素为单位。 安排时，每个项目都适合SM_CYICONSPACING的SM_CXICONSPACING大小的矩形。 该值始终大于或等于SM_CXICON。
        /// The width of a grid cell for items in large icon view, in pixels. Each item fits into a rectangle of size SM_CXICONSPACING by SM_CYICONSPACING when arranged. This value is always greater than or equal to SM_CXICON.
        /// </summary>
        SM_CXICONSPACING = 38,

        /// <summary>
        /// 主显示器上最大化顶级窗口的默认宽度（以像素为单位）。
        /// The default width, in pixels, of a maximized top-level window on the primary display monitor.
        /// </summary>
        SM_CXMAXIMIZED = 61,

        /// <summary>
        /// 具有标题和大小调整边框的窗口的默认最大宽度（以像素为单位）。 此指标指的是整个桌面。 用户无法将窗口框架拖动到大于这些尺寸的尺寸。 窗口可以通过处理WM_GETMINMAXINFO消息来覆盖此值。
        /// The default maximum width of a window that has a caption and sizing borders, in pixels. This metric refers to the entire desktop. The user cannot drag the window frame to a size larger than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message.
        /// </summary>
        SM_CXMAXTRACK = 59,

        /// <summary>
        /// 默认菜单复选标记位图的宽度（以像素为单位）。
        /// The width of the default menu check-mark bitmap, in pixels.
        /// </summary>
        SM_CXMENUCHECK = 71,

        /// <summary>
        /// 菜单栏按钮的宽度，例如多文档界面中使用的子窗口关闭按钮，以像素为单位。
        /// The width of menu bar buttons, such as the child window close button that is used in the multiple document interface, in pixels.
        /// </summary>
        SM_CXMENUSIZE = 54,

        /// <summary>
        /// 窗口的最小宽度（以像素为单位）。
        /// The minimum width of a window, in pixels.
        /// </summary>
        SM_CXMIN = 28,

        /// <summary>
        /// 最小化窗口的宽度（以像素为单位）。
        /// The width of a minimized window, in pixels.
        /// </summary>
        SM_CXMINIMIZED = 57,

        /// <summary>
        /// 最小化窗口的网格单元格的宽度（以像素为单位）。 每个最小化的窗口在排列时都适合这个尺寸的矩形。 该值始终大于或等于SM_CXMINIMIZED。
        /// The width of a grid cell for a minimized window, in pixels. Each minimized window fits into a rectangle this size when arranged. This value is always greater than or equal to SM_CXMINIMIZED.
        /// </summary>
        SM_CXMINSPACING = 47,

        /// <summary>
        /// 窗口的最小跟踪宽度（以像素为单位）。 用户无法将窗口框架拖动到小于这些尺寸的尺寸。 窗口可以通过处理WM_GETMINMAXINFO消息来覆盖此值。
        /// The minimum tracking width of a window, in pixels. The user cannot drag the window frame to a size smaller than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message.
        /// </summary>
        SM_CXMINTRACK = 34,

        /// <summary>
        /// 标题窗口的边框填充量（以像素为单位）。Windows XP / 2000：不支持此值。
        /// The amount of border padding for captioned windows, in pixels.
        /// Windows XP/2000:  This value is not supported.
        /// </summary>
        SM_CXPADDEDBORDER = 92,

        /// <summary>
        /// 主显示器屏幕的宽度，以像素为单位。 这是通过调用GetDeviceCaps获得的相同值，如下所示：GetDeviceCaps（hdcPrimaryMonitor，HORZRES）。
        /// The width of the screen of the primary display monitor, in pixels. This is the same value obtained by calling GetDeviceCaps as follows: GetDeviceCaps( hdcPrimaryMonitor, HORZRES).
        /// </summary>
        SM_CXSCREEN = 0,

        /// <summary>
        /// 窗口标题或标题栏中按钮的宽度（以像素为单位）。
        /// The width of a button in a window caption or title bar, in pixels.
        /// </summary>
        SM_CXSIZE = 30,

        /// <summary>
        /// 围绕窗口周边的大小调整边框的粗细，可以调整大小，以像素为单位。 SM_CXSIZEFRAME是水平边框的宽度，SM_CYSIZEFRAME是垂直边框的高度。该值与SM_CXFRAME相同。
        /// The thickness of the sizing border around the perimeter of a window that can be resized, in pixels. SM_CXSIZEFRAME is the width of the horizontal border, and SM_CYSIZEFRAME is the height of the vertical border.
        /// This value is the same as SM_CXFRAME.
        /// </summary>
        SM_CXSIZEFRAME = 32,

        /// <summary>
        /// 建议的小图标宽度（以像素为单位）。 小图标通常出现在窗口标题和小图标视图中。
        /// The recommended width of a small icon, in pixels. Small icons typically appear in window captions and in small icon view.
        /// </summary>
        SM_CXSMICON = 49,

        /// <summary>
        /// 小字幕按钮的宽度，以像素为单位。
        /// The width of small caption buttons, in pixels.
        /// </summary>
        SM_CXSMSIZE = 52,

        /// <summary>
        /// 虚拟屏幕的宽度（以像素为单位）。 虚拟屏幕是所有显示器的边界矩形。 SM_XVIRTUALSCREEN度量标准是虚拟屏幕左侧的坐标。
        /// The width of the virtual screen, in pixels. The virtual screen is the bounding rectangle of all display monitors. The SM_XVIRTUALSCREEN metric is the coordinates for the left side of the virtual screen.
        /// </summary>
        SM_CXVIRTUALSCREEN = 78,

        /// <summary>
        /// 垂直滚动条的宽度（以像素为单位）。
        /// The width of a vertical scroll bar, in pixels.
        /// </summary>
        SM_CXVSCROLL = 2,

        /// <summary>
        /// 窗口边框的高度（以像素为单位）。 这相当于具有3-D外观的窗口的SM_CYEDGE值。
        /// The height of a window border, in pixels. This is equivalent to the SM_CYEDGE value for windows with the 3-D look.
        /// </summary>
        SM_CYBORDER = 6,

        /// <summary>
        /// 标题区域的高度，以像素为单位。
        /// The height of a caption area, in pixels.
        /// </summary>
        SM_CYCAPTION = 4,

        /// <summary>
        /// 光标的高度，以像素为单位。 系统无法创建其他大小的游标。
        /// The height of a cursor, in pixels. The system cannot create cursors of other sizes.
        /// </summary>
        SM_CYCURSOR = 14,

        /// <summary>
        /// 同 SM_CYFIXEDFRAME.
        /// This value is the same as SM_CYFIXEDFRAME.
        /// </summary>
        SM_CYDLGFRAME = 8,

        /// <summary>
        /// 双击序列中第一次单击位置周围的矩形高度，以像素为单位。 第二次单击必须在SM_CXDOUBLECLK和SM_CYDOUBLECLK定义的矩形内进行，系统才能考虑双击两次单击。 两次单击也必须在指定时间内发生。
        /// 要设置双击矩形的高度，请使用SPI_SETDOUBLECLKHEIGHT调用SystemParametersInfo。
        /// The height of the rectangle around the location of a first click in a double-click sequence, in pixels. The second click must occur within the rectangle defined by SM_CXDOUBLECLK and SM_CYDOUBLECLK for the system to consider the two clicks a double-click. The two clicks must also occur within a specified time.
        /// To set the height of the double-click rectangle, call SystemParametersInfo with SPI_SETDOUBLECLKHEIGHT.
        /// </summary>
        SM_CYDOUBLECLK = 37,

        /// <summary>
        /// 在拖动操作开始之前鼠标指针可以移动的鼠标按下点上方和下方的像素数。 这允许用户轻松地单击和释放鼠标按钮而不会无意中开始拖动操作。 如果此值为负值，则从鼠标按下点上方减去它并在其下方添加。
        /// The number of pixels above and below a mouse-down point that the mouse pointer can move before a drag operation begins. This allows the user to click and release the mouse button easily without unintentionally starting a drag operation. If this value is negative, it is subtracted from above the mouse-down point and added below it.
        /// </summary>
        SM_CYDRAG = 69,

        /// <summary>
        /// 三维边框的高度（以像素为单位）。 这是SM_CYBORDER的3D对应物。
        /// The height of a 3-D border, in pixels. This is the 3-D counterpart of SM_CYBORDER.
        /// </summary>
        SM_CYEDGE = 46,

        /// <summary>
        /// 围绕窗口周边的框架的厚度，其具有标题但不是相当大的像素。 SM_CXFIXEDFRAME是水平边框的高度，SM_CYFIXEDFRAME是垂直边框的宽度。
        /// 该值与SM_CYDLGFRAME相同。
        /// The thickness of the frame around the perimeter of a window that has a caption but is not sizable, in pixels. SM_CXFIXEDFRAME is the height of the horizontal border, and SM_CYFIXEDFRAME is the width of the vertical border.
        /// This value is the same as SM_CYDLGFRAME.
        /// </summary>
        SM_CYFIXEDFRAME = 8,

        /// <summary>
        /// DrawFocusRect绘制的焦点矩形的顶部和底部边缘的高度。 该值以像素为单位。
        /// Windows 2000：不支持此值。
        /// The height of the top and bottom edges of the focus rectangle drawn by DrawFocusRect. This value is in pixels.
        /// Windows 2000:  This value is not supported.
        /// </summary>
        SM_CYFOCUSBORDER = 84,

        /// <summary>
        /// 同 SM_CYSIZEFRAME.
        /// This value is the same as SM_CYSIZEFRAME.
        /// </summary>
        SM_CYFRAME = 33,

        /// <summary>
        /// 主显示器监视器上全屏窗口的客户端区域高度（以像素为单位）。 要使屏幕部分的坐标不被系统任务栏或应用程序桌面工具栏遮挡，请使用SPI_GETWORKAREA值调用SystemParametersInfo函数。
        /// The height of the client area for a full-screen window on the primary display monitor, in pixels. To get the coordinates of the portion of the screen not obscured by the system taskbar or by application desktop toolbars, call the SystemParametersInfo function with the SPI_GETWORKAREA value.
        /// </summary>
        SM_CYFULLSCREEN = 17,

        /// <summary>
        /// 水平滚动条的高度，以像素为单位。
        /// The height of a horizontal scroll bar, in pixels.
        /// </summary>
        SM_CYHSCROLL = 3,

        /// <summary>
        /// 图标的默认高度（以像素为单位）。 LoadIcon函数只能加载尺寸为SM_CXICON和SM_CYICON的图标。
        /// The default height of an icon, in pixels. The LoadIcon function can load only icons with the dimensions SM_CXICON and SM_CYICON.
        /// </summary>
        SM_CYICON = 12,

        /// <summary>
        /// 大图标视图中项目的网格单元格的高度，以像素为单位。 安排时，每个项目都适合SM_CYICONSPACING的SM_CXICONSPACING大小的矩形。 该值始终大于或等于SM_CYICON。
        /// The height of a grid cell for items in large icon view, in pixels. Each item fits into a rectangle of size SM_CXICONSPACING by SM_CYICONSPACING when arranged. This value is always greater than or equal to SM_CYICON.
        /// </summary>
        SM_CYICONSPACING = 39,

        /// <summary>
        /// 对于系统的双字节字符集版本，这是屏幕底部的汉字窗口的高度，以像素为单位。
        /// For double byte character set versions of the system, this is the height of the Kanji window at the bottom of the screen, in pixels.
        /// </summary>
        SM_CYKANJIWINDOW = 18,

        /// <summary>
        /// 主显示监视器上最大化顶级窗口的默认高度（以像素为单位）。
        /// The default height, in pixels, of a maximized top-level window on the primary display monitor.
        /// </summary>
        SM_CYMAXIMIZED = 62,

        /// <summary>
        /// 具有标题和大小调整边框的窗口的默认最大高度（以像素为单位）。 此指标指的是整个桌面。 用户无法将窗口框架拖动到大于这些尺寸的尺寸。 窗口可以通过处理WM_GETMINMAXINFO消息来覆盖此值。
        /// The default maximum height of a window that has a caption and sizing borders, in pixels. This metric refers to the entire desktop. The user cannot drag the window frame to a size larger than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message.
        /// </summary>
        SM_CYMAXTRACK = 60,

        /// <summary>
        /// 单行菜单栏的高度（以像素为单位）。
        /// The height of a single-line menu bar, in pixels.
        /// </summary>
        SM_CYMENU = 15,

        /// <summary>
        /// 默认菜单复选标记位图的高度（以像素为单位）。
        /// The height of the default menu check-mark bitmap, in pixels.
        /// </summary>
        SM_CYMENUCHECK = 72,

        /// <summary>
        /// 菜单栏按钮的高度，例如多文档界面中使用的子窗口关闭按钮，以像素为单位。
        /// The height of menu bar buttons, such as the child window close button that is used in the multiple document interface, in pixels.
        /// </summary>
        SM_CYMENUSIZE = 55,

        /// <summary>
        /// 窗口的最小高度（以像素为单位）。
        /// The minimum height of a window, in pixels.
        /// </summary>
        SM_CYMIN = 29,

        /// <summary>
        /// 最小化窗口的高度（以像素为单位）。
        /// The height of a minimized window, in pixels.
        /// </summary>
        SM_CYMINIMIZED = 58,

        /// <summary>
        /// 最小化窗口的网格单元格的高度，以像素为单位。 每个最小化的窗口在排列时都适合这个尺寸的矩形。 此值始终大于或等于SM_CYMINIMIZED。
        /// The height of a grid cell for a minimized window, in pixels. Each minimized window fits into a rectangle this size when arranged. This value is always greater than or equal to SM_CYMINIMIZED.
        /// </summary>
        SM_CYMINSPACING = 48,

        /// <summary>
        /// 窗口的最小跟踪高度（以像素为单位）。 用户无法将窗口框架拖动到小于这些尺寸的尺寸。 窗口可以通过处理WM_GETMINMAXINFO消息来覆盖此值。
        /// The minimum tracking height of a window, in pixels. The user cannot drag the window frame to a size smaller than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message.
        /// </summary>
        SM_CYMINTRACK = 35,

        /// <summary>
        /// 主显示器屏幕的高度，以像素为单位。 这是通过调用GetDeviceCaps获得的相同值，如下所示：GetDeviceCaps（hdcPrimaryMonitor，VERTRES）。
        /// The height of the screen of the primary display monitor, in pixels. This is the same value obtained by calling GetDeviceCaps as follows: GetDeviceCaps( hdcPrimaryMonitor, VERTRES).
        /// </summary>
        SM_CYSCREEN = 1,

        /// <summary>
        /// 窗口标题或标题栏中按钮的高度（以像素为单位）。
        /// The height of a button in a window caption or title bar, in pixels.
        /// </summary>
        SM_CYSIZE = 31,

        /// <summary>
        /// 围绕窗口周边的大小调整边框的粗细，可以调整大小，以像素为单位。 SM_CXSIZEFRAME是水平边框的宽度，SM_CYSIZEFRAME是垂直边框的高度。该值与SM_CYFRAME相同。
        /// The thickness of the sizing border around the perimeter of a window that can be resized, in pixels. SM_CXSIZEFRAME is the width of the horizontal border, and SM_CYSIZEFRAME is the height of the vertical border.
        /// This value is the same as SM_CYFRAME.

        /// </summary>
        SM_CYSIZEFRAME = 33,

        /// <summary>
        /// 小标题的高度，以像素为单位。
        /// The height of a small caption, in pixels.
        /// </summary>
        SM_CYSMCAPTION = 51,

        /// <summary>
        /// 建议的小图标高度（以像素为单位）。 小图标通常出现在窗口标题和小图标视图中。
        /// The recommended height of a small icon, in pixels. Small icons typically appear in window captions and in small icon view.
        /// </summary>
        SM_CYSMICON = 50,

        /// <summary>
        /// 小字幕按钮的高度，以像素为单位。
        /// The height of small caption buttons, in pixels.
        /// </summary>
        SM_CYSMSIZE = 53,

        /// <summary>
        /// 虚拟屏幕的高度，以像素为单位。 虚拟屏幕是所有显示器的边界矩形。 SM_YVIRTUALSCREEN指标是虚拟屏幕顶部的坐标。
        /// The height of the virtual screen, in pixels. The virtual screen is the bounding rectangle of all display monitors. The SM_YVIRTUALSCREEN metric is the coordinates for the top of the virtual screen.
        /// </summary>
        SM_CYVIRTUALSCREEN = 79,

        /// <summary>
        /// 垂直滚动条上箭头位图的高度，以像素为单位。
        /// The height of the arrow bitmap on a vertical scroll bar, in pixels.
        /// </summary>
        SM_CYVSCROLL = 20,

        /// <summary>
        /// 垂直滚动条中拇指框的高度，以像素为单位。
        /// The height of the thumb box in a vertical scroll bar, in pixels.
        /// </summary>
        SM_CYVTHUMB = 9,

        /// <summary>
        /// 如果User32.dll支持DBCS，则为非零; 否则，0。
        /// Nonzero if User32.dll supports DBCS; otherwise, 0.
        /// </summary>
        SM_DBCSENABLED = 42,

        /// <summary>
        /// 如果安装了User.exe的调试版本，则为非零; 否则，0。
        /// Nonzero if the debug version of User.exe is installed; otherwise, 0.
        /// </summary>
        SM_DEBUG = 22,

        /// <summary>
        /// 如果当前操作系统是Windows 7或Windows Server 2008 R2且Tablet PC输入服务已启动，则为非零; 返回值是一个位掩码，指定设备支持的数字化仪输入的类型。 有关更多信息，请参阅备注。
        /// Windows Server 2008，Windows Vista和Windows XP / 2000：不支持此值。
        /// Nonzero if the current operating system is Windows 7 or Windows Server 2008 R2 and the Tablet PC Input service is started; otherwise, 0. The return value is a bitmask that specifies the type of digitizer input supported by the device. For more information, see Remarks.
        /// Windows Server 2008, Windows Vista and Windows XP/2000:  This value is not supported.
        /// </summary>
        SM_DIGITIZER = 94,

        /// <summary>
        /// 如果启用了输入法管理器/输入法编辑器功能，则为非零; 否则，0。
        /// SM_IMMENABLED指示系统是否已准备好在Unicode应用程序上使用基于Unicode的IME。 要确保依赖于语言的IME正常工作，请检查SM_DBCSENABLED和系统ANSI代码页。 否则，可能无法正确执行ANSI到Unicode转换，或者可能不存在某些组件（如字体或注册表设置）。
        /// Nonzero if Input Method Manager/Input Method Editor features are enabled; otherwise, 0.
        /// SM_IMMENABLED indicates whether the system is ready to use a Unicode-based IME on a Unicode application. To ensure that a language-dependent IME works, check SM_DBCSENABLED and the system ANSI code page. Otherwise the ANSI-to-Unicode conversion may not be performed correctly, or some components like fonts or registry settings may not be present.
        /// </summary>
        SM_IMMENABLED = 82,

        /// <summary>
        /// 如果系统中有数字化仪，则为非零; 否则，0。
        /// SM_MAXIMUMTOUCHES返回系统中每个数字化仪支持的最大联系数的最大值。 如果系统只有单触式数字化仪，则返回值为1.如果系统具有多点触摸数字化仪，则返回值是硬件可以提供的同时触点数。
        /// Windows Server 2008，Windows Vista和Windows XP / 2000：不支持此值。
        /// Nonzero if there are digitizers in the system; otherwise, 0.
        /// SM_MAXIMUMTOUCHES returns the aggregate maximum of the maximum number of contacts supported by every digitizer in the system. If the system has only single-touch digitizers, the return value is 1. If the system has multi-touch digitizers, the return value is the number of simultaneous contacts the hardware can provide.
        /// Windows Server 2008, Windows Vista and Windows XP/2000:  This value is not supported.
        /// </summary>
        SM_MAXIMUMTOUCHES = 95,

        /// <summary>
        /// 如果当前操作系统是Windows XP，Media Center Edition则为非零，否则为0。
        /// Nonzero if the current operating system is the Windows XP, Media Center Edition, 0 if not.
        /// </summary>
        SM_MEDIACENTER = 87,

        /// <summary>
        /// 如果下拉菜单与相应的菜单栏项右对齐，则为非零; 如果菜单左对齐，则为0。
        /// Nonzero if drop-down menus are right-aligned with the corresponding menu-bar item; 0 if the menus are left-aligned.
        /// </summary>
        SM_MENUDROPALIGNMENT = 40,

        /// <summary>
        /// 如果系统启用了希伯来语和阿拉伯语，则为非零，否则为0。
        /// Nonzero if the system is enabled for Hebrew and Arabic languages, 0 if not.
        /// </summary>
        SM_MIDEASTENABLED = 74,

        /// <summary>
        /// 如果安装了鼠标，则为非零; 否则，0。该值很少为零，因为支持虚拟鼠标，并且因为某些系统检测到端口的存在而不是鼠标的存在。
        /// Nonzero if a mouse is installed; otherwise, 0. This value is rarely zero, because of support for virtual mice and because some systems detect the presence of the port instead of the presence of a mouse.
        /// </summary>
        SM_MOUSEPRESENT = 19,

        /// <summary>
        /// 如果安装了带水平滚轮的鼠标，则为非零; 否则为0。
        /// Nonzero if a mouse with a horizontal scroll wheel is installed; otherwise 0.
        /// </summary>
        SM_MOUSEHORIZONTALWHEELPRESENT = 91,

        /// <summary>
        /// 如果安装了带垂直滚轮的鼠标，则为非零; 否则为0。
        /// Nonzero if a mouse with a vertical scroll wheel is installed; otherwise 0.
        /// </summary>
        SM_MOUSEWHEELPRESENT = 75,

        /// <summary>
        /// 如果存在网络，则设置最低有效位; 否则，它被清除。 其他位保留供将来使用。
        /// The least significant bit is set if a network is present; otherwise, it is cleared. The other bits are reserved for future use.
        /// </summary>
        SM_NETWORK = 63,

        /// <summary>
        /// 如果安装了Microsoft Windows for Pen计算扩展，则为非零; 否则为零。
        /// Nonzero if the Microsoft Windows for Pen computing extensions are installed; zero otherwise.
        /// </summary>
        SM_PENWINDOWS = 41,

        /// <summary>
        /// 此系统度量标准用于终端服务环境，以确定是否正在远程控制当前的终端服务器会话。 如果当前会话是远程控制的，它的值是非零的; 否则，0。
        /// 您可以使用终端服务管理工具（如终端服务管理器（tsadmin.msc）和shadow.exe）来控制远程会话。 当远程控制会话时，另一个用户可以查看该会话的内容并可能与其进行交互。
        /// This system metric is used in a Terminal Services environment to determine if the current Terminal Server session is being remotely controlled. Its value is nonzero if the current session is remotely controlled; otherwise, 0.
        /// You can use terminal services management tools such as Terminal Services Manager (tsadmin.msc) and shadow.exe to control a remote session. When a session is being remotely controlled, another user can view the contents of that session and potentially interact with it.
        /// </summary>
        SM_REMOTECONTROL = 0x2001,

        /// <summary>
        /// 此系统度量标准用于终端服务环境中。 如果调用进程与终端服务客户端会话关联，则返回值为非零。 如果调用进程与终端服务控制台会话关联，则返回值为0。
        /// Windows Server 2003和Windows XP：控制台会话不一定是物理控制台。 有关更多信息，请参阅WTSGetActiveConsoleSessionId。
        /// This system metric is used in a Terminal Services environment. If the calling process is associated with a Terminal Services client session, the return value is nonzero. If the calling process is associated with the Terminal Services console session, the return value is 0. Windows Server 2003 and Windows XP:  The console session is not necessarily the physical console. For more information, see WTSGetActiveConsoleSessionId.
        /// </summary>
        SM_REMOTESESSION = 0x1000,

        /// <summary>
        /// 如果所有显示器具有相同的颜色格式，则为非零，否则为0.两个显示器可以具有相同的位深度，但颜色格式不同。 例如，红色，绿色和蓝色像素可以用不同数量的比特编码，或者那些比特可以位于像素颜色值中的不同位置。
        /// Nonzero if all the display monitors have the same color format, otherwise, 0. Two displays can have the same bit depth, but different color formats. For example, the red, green, and blue pixels can be encoded with different numbers of bits, or those bits can be located in different places in a pixel color value.
        /// </summary>
        SM_SAMEDISPLAYFORMAT = 81,

        /// <summary>
        /// 应忽略此系统指标; 它总是返回0。
        /// This system metric should be ignored; it always returns 0.
        /// </summary>
        SM_SECURE = 44,

        /// <summary>
        /// 如果系统是Windows Server 2003 R2，则为内部版本号; 否则，0。
        /// The build number if the system is Windows Server 2003 R2; otherwise, 0.
        /// </summary>
        SM_SERVERR2 = 89,

        /// <summary>
        /// 非零，如果用户要求应用程序以可视方式呈现信息，否则它将仅以可听形式呈现信息; 否则，0。
        /// Nonzero if the user requires an application to present information visually in situations where it would otherwise present the information only in audible form; otherwise, 0.
        /// </summary>
        SM_SHOWSOUNDS = 70,

        /// <summary>
        /// 如果当前会话正在关闭，则为非零; 否则，0。
        /// Windows 2000：不支持此值。
        /// Nonzero if the current session is shutting down; otherwise, 0.
        /// Windows 2000:  This value is not supported.
        /// </summary>
        SM_SHUTTINGDOWN = 0x2000,

        /// <summary>
        /// 如果计算机具有低端（慢）处理器，则为非零; 否则，0。
        /// Nonzero if the computer has a low-end (slow) processor; otherwise, 0.
        /// </summary>
        SM_SLOWMACHINE = 73,

        /// <summary>
        /// 如果当前操作系统是Windows 7 Starter Edition，Windows Vista Starter或Windows XP Starter Edition，则为非零; 否则，0。
        /// Nonzero if the current operating system is Windows 7 Starter Edition, Windows Vista Starter, or Windows XP Starter Edition; otherwise, 0.
        /// </summary>
        SM_STARTER = 88,

        /// <summary>
        /// 如果交换了鼠标左键和右键的含义，则为非零; 否则，0。
        /// Nonzero if the meanings of the left and right mouse buttons are swapped; otherwise, 0.
        /// </summary>
        SM_SWAPBUTTON = 23,

        /// <summary>
        /// 反映停靠模式的状态，0表示未锁定模式，否则为非零。 当此系统指标发生变化时，系统通过WM_SETTINGCHANGE通过LPARAM中的"SystemDockMode"发送广播消息。
        /// Reflects the state of the docking mode, 0 for Undocked Mode and non-zero otherwise. When this system metric changes, the system sends a broadcast message via WM_SETTINGCHANGE with "SystemDockMode" in the LPARAM.
        /// </summary>
        SM_SYSTEMDOCKED = 0x2004,

        /// <summary>
        /// 如果当前操作系统是Windows XP Tablet PC版本，或者当前操作系统是Windows Vista或Windows 7且Tablet PC输入服务已启动，则为非零; SM_DIGITIZER设置指示运行Windows 7或Windows Server 2008 R2的设备支持的数字化仪输入类型。 有关更多信息，请参阅备注。
        /// Nonzero if the current operating system is the Windows XP Tablet PC edition or if the current operating system is Windows Vista or Windows 7 and the Tablet PC Input service is started; otherwise, 0. The SM_DIGITIZER setting indicates the type of digitizer input supported by a device running Windows 7 or Windows Server 2008 R2. For more information, see Remarks.
        /// </summary>
        SM_TABLETPC = 86,

        /// <summary>
        /// 虚拟屏幕左侧的坐标。 虚拟屏幕是所有显示器的边界矩形。 SM_CXVIRTUALSCREEN指标是虚拟屏幕的宽度。
        /// The coordinates for the left side of the virtual screen. The virtual screen is the bounding rectangle of all display monitors. The SM_CXVIRTUALSCREEN metric is the width of the virtual screen.
        /// </summary>
        SM_XVIRTUALSCREEN = 76,

        /// <summary>
        /// 虚拟屏幕顶部的坐标。 虚拟屏幕是所有显示器的边界矩形。 SM_CYVIRTUALSCREEN指标是虚拟屏幕的高度。
        /// The coordinates for the top of the virtual screen. The virtual screen is the bounding rectangle of all display monitors. The SM_CYVIRTUALSCREEN metric is the height of the virtual screen.
        /// </summary>
        SM_YVIRTUALSCREEN = 77
    }
}
